package com.ruoyi.customerSample.mapper;

import com.ruoyi.customerSample.domain.SampleReceptionBill;
import org.apache.ibatis.annotations.Param;

import java.util.List;
import java.util.Map;

/**
 * 样品接收单据Mapper接口
 * 
 * @author ruoyi
 * @date 2023-04-10
 */
public interface SampleReceptionBillMapper 
{
    /**
     * 查询样品接收单据
     * 
     * @param id 样品接收单据ID
     * @return 样品接收单据
     */
    public SampleReceptionBill selectSampleReceptionBillById(String id);

    /**
     * 根据项目编号获取样品信息
     */
    public SampleReceptionBill selectSampleReceptionBillByItemNum(String itemNum);

    /**
     * 查询样品接收单据列表
     * 
     * @param sampleReceptionBill 样品接收单据
     * @return 样品接收单据集合
     */
    public List<SampleReceptionBill> selectSampleReceptionBillList(SampleReceptionBill sampleReceptionBill);

    /**
     * 新增样品接收单据
     * 
     * @param sampleReceptionBill 样品接收单据
     * @return 结果
     */
    public int insertSampleReceptionBill(SampleReceptionBill sampleReceptionBill);

    /**
     * 查询所有来样登记数据
     */
    public List<Map<String, Object>> selectAllSampleBill(@Param("client") String client);


    /**
     * 查询所有项目编号来样登记数据
     */
    public List<Map<String, Object>> selectAllSampleBillByNum(@Param("itemNum") String itemNum);

    /**
     * 修改样品接收单据
     * 
     * @param sampleReceptionBill 样品接收单据
     * @return 结果
     */
    public int updateSampleReceptionBill(SampleReceptionBill sampleReceptionBill);

    /**
     * 修改样品接收单据
     *
     * @param sampleReceptionBill 样品接收单据
     * @return 结果
     */
    public int updateSampleReceptionBillByNum(SampleReceptionBill sampleReceptionBill);

    /**
     * 删除样品接收单据
     * 
     * @param id 样品接收单据ID
     * @return 结果
     */
    public int deleteSampleReceptionBillById(String id);

    /**
     * 批量删除样品接收单据
     * 
     * @param ids 需要删除的数据ID
     * @return 结果
     */
    public int deleteSampleReceptionBillByIds(String[] ids);
}
